/* eslint-disable no-undef,no-unused-vars,spaced-comment */
/* 这里不实用vue-cookie的原因是实验如何项目 混用jq 和 jq插件*/
import cookie from 'jquery.cookie';

require('expose-loader?$!jquery');

class Utils {
  static isLocalStorageSupported() {
    try {
      if (!window.localStorage || !window.sessionStorage) {
        return false;
      }
      localStorage.setItem('storage_test', 1);
      localStorage.removeItem('storage_test');
      return true;
    } catch (e) {
      return false;
    }
  };

  static GetJwt() {
    if (this.isLocalStorageSupported()) {
      return localStorage.getItem('wechatmalljwt');
    } else {
      return $.cookie('wechatmalljwt');
    }
  };

  static SetJwt(token) {
    if (this.isLocalStorageSupported()) {
      return localStorage.setItem('wechatmalljwt', token);
    } else {
      return $.cookie('wechatmalljwt', token);
    }
  };

  static RemoveJwt() {
    if (this.isLocalStorageSupported()) {
      return localStorage.removeItem('wechatmalljwt');
    } else {
      return $.removeCookie('wechatmalljwt');
    }
  };

  static dateFtt(fmt, date) {
    var o = {
      'M+': date.getMonth() + 1,
      'd+': date.getDate(),
      'h+': date.getHours(),
      'm+': date.getMinutes(),
      's+': date.getSeconds(),
      'q+': Math.floor((date.getMonth() + 3) / 3),
      'S': date.getMilliseconds()
    };
    if (/(y+)/.test(fmt)) {
      fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
    }

    for (var k in o) {
      if (new RegExp('(' + k + ')').test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));
      }
    }
    return fmt;
  };
};

export {Utils};
